function a() {
  console.log("version 1.03")
  var my_script = document.createElement("script");
  document.head.appendChild(my_script);

  var is_root_element = document.getElementById("root_element");
  if(!is_root_element){
    var element = document.createElement("div");
    element.id = "root_element";
    document.body.appendChild(element);
  }
  new Vue({
    el: "#root_element",
    data: {
      no_reason_5_reply: [
        "百忙之中您能抽时间给个好评，太珍贵了！小店一定不辜负您的肯定，推出更多的美味，提供更优质的服务！",
        "看到你的好评，真的是暖到心里啦！看的你的好评，我又有动力啦。",
        "感谢亲的好评！记得顺手点击“店铺收藏”，下次点餐就不会再迷路了哦！",
        "你的好评是对我最大的肯定，我不奢求一日三餐四季，只希望你往后偶尔点个单。",
        "哎呀妈呀，收到好评以后头也不疼了，眼也不花了，又能继续干活了！^.^谢谢亲的支持。",
        "感谢吃货朋友百忙之中的支持和点赞，祝您用餐愉快天天好心情！"
      ],
      no_reason_4_reply: [
        "感谢亲对我们的喜爱，满意还请您给我们五颗星星，我们会越做越好。您的支持是我们莫大的荣幸，欢迎下次光临，祝您生活愉快！",
        "给我们的四星好评，定是我们还有哪些地方做的不够好。我们会更加用心的做到您心中的五星店家的哦！让您感受到我们的用心，祝您生活愉快，欢迎下次光临！"
      ],
      no_reason_3_reply: ["感谢您对我们的喜爱，感谢您选择了我们，我们会用加倍的用心为顾客们提供更好的服务，您若是有什么不满意的地方说明情况并告知，这样也有利于我们能够为您提供更好的品质。祝您生活愉快，欢迎下次光临！"],
      nice_5_reply: ["感谢您对本店的信任与支持，您的满意就是我们奋斗的目标.欢迎下次再来！"],
      happy_5_reply: ["亲，很高兴能让您开心，小店的美食和服务能换来您的开心，就是小店最大的成功！期待您的再次光临!"],
      new_guest_5_reply:[
        "感谢您选择本店，我们会不断的提升产品与服务的质量！欢迎再次光临。祝您生活愉快每天都有好心情！",
        "如果说，我是厨子，那你就是我堂前的食客；如果说，我是戏子，那你就是我堂下的看客，谢谢你的眼里，看见了我，并选择了我！"
      ],
      good_5_reply: [
        "谢谢亲的肯定，因为有您的评价，小店心里暖呼呼的，这感觉真好！期待您的再次光临~",
        "谢谢您对我们的喜爱，我们会用更好的品质回报给每一位顾客的，祝您生活愉快，欢迎下次光临！",
        "谢谢亲，我们的质量和服务一直都不会让亲失望的，非常感谢！",
        "感谢吃货朋友百忙之中的支持和点赞，祝您用餐愉快天天好心情！"
      ],
      LargePortion_5_reply: ["我们的追求不仅仅是让您吃饱，让您吃的健康和舒心才是我们的最大目标。您的每一个肯定都是对我们小店前进的大大的动力！"],
      support_5_reply: [
        "小主您的鼓励与陪伴就是小店坚持努力走下去的动力，欢迎亲的再次光临!",
        "谢谢您对我们的喜爱，我们会用更好的品质回报给每一位顾客的，祝您生活愉快，欢迎下次光临!",
        "感谢您对本店的信任与支持，您的满意就是我们奋斗的目标.欢迎下次再来！"
      ],
      old_guest_5_reply: [
        "感谢您一直以来对“本店”的支持，我们会不断提升，做到更好。",
        "感谢小店成长的路上有您的帮助和支持，最真挚的祝福送给您，许下美丽的心愿 ，让您所有的愿望都能实现！"
      ],
      refresh_count: 0,
      current_myList_length: 0,
      hao: 0,
    },
    template: `
      <div style='
        position: fixed;
        left: 20px;
        top: 0;
      '>
        <button style='
          background-color: #16EDE9;
          border-radius: 25px;
        '
        @click="get_list"
        >回复好评</button>
      </div>
    `,
    methods: {
      get_list() {
        //初始化事件对象
        const inputEvent = new Event('input',{"bubbles":true,"cancelable":false});
        const clickEvent = new Event('click',{"bubbles":true,"cancelable":false});
        //获取评论列表父元素
        const my_list_box = document.getElementsByClassName("comment_list_box");
        //未回复按钮元素
        const no_reply_btn = document.getElementsByClassName("filter_list_container")[0].childNodes[1];
        // 评论列表不为空，则遍历该列表
        if(my_list_box.length > 0){
          const my_list = my_list_box[0].childNodes
            my_list.forEach((value,index,array)=>{


              //评论文本
              var evaluate_content = array[index].getElementsByClassName("comment_card_comment")[0].innerText;
              //评论分数
              var fraction_list = array[index].getElementsByClassName("poi_count")[0].childNodes[0].innerText;
                if(evaluate_content == "该用户没有填写评价内容"){
                  // var fraction_list = array[index].getElementsByClassName("poi_count")[0].childNodes[0].innerText;
                  if(fraction_list == "总分5"){
                    console.log("我是五星未填写原因好评：");
                    this.reply(array[index],this.no_reason_5_reply)
                  }else if(fraction_list == "总分4"){
                    console.log("我是四星未填写原因好评：");
                    this.reply(array[index],this.no_reason_4_reply)
                  }else if(fraction_list == "总分3"){
                    console.log("我是三星未填写原因好评：");
                    this.reply(array[index],this.no_reason_3_reply)
                  }
                }else if (evaluate_content.includes("第一次") || evaluate_content.includes("第1次")){
                  if(fraction_list == "总分5"){
                    console.log("我是5星新客的评论");
                    console.log(array[index]);
                    this.reply(array[index],this.new_guest_5_reply);
                  }
                }else if (evaluate_content.includes("好吃") && evaluate_content.includes("满意")){
                  if(fraction_list == "总分5"){
                    console.log("我是5星觉得满意的评论");
                    console.log(array[index]);
                    this.reply(array[index],this.nice_5_reply);
                  }
                }else if (evaluate_content.includes("好吃") && evaluate_content.includes("哈哈")){
                  if(fraction_list == "总分5"){
                    console.log("我是5星很开心的评论");
                    console.log(array[index]);
                    this.reply(array[index],this.happy_5_reply);
                  }
                }else if (
                  evaluate_content.includes("多次") || evaluate_content.includes("好几次") ||
                  evaluate_content.includes("一直点") || evaluate_content.includes("经常")
                ){
                  if(fraction_list == "总分5"){
                    console.log("我是5星老客回复")
                    console.log(array[index])
                    this.reply(array[index],this.old_guest_5_reply)
                  }
                }else if (evaluate_content.includes("下次") || evaluate_content.includes("下次还来") || evaluate_content.includes("下次还点") || evaluate_content.includes("下一次")){
                  if(fraction_list == "总分5"){
                    console.log("我是5星下次还点的评论");
                    console.log(array[index])
                    this.reply(array[index],this.support_5_reply)
                  }
                }else if (
                  evaluate_content.includes("份量很足") || evaluate_content.includes("份量好足") || evaluate_content.includes("很饱") || evaluate_content.includes("好饱")
                  || evaluate_content.includes("量太多了") || evaluate_content.includes("量超级多") || evaluate_content.includes("很足") || evaluate_content.includes("好足")
                  || evaluate_content.includes("大份") || evaluate_content.includes("好大")
                ){
                  if(fraction_list == "总分5"){
                    console.log("我是5星觉得份量多的评论");
                    console.log(array[index])
                    this.reply(array[index],this.LargePortion_5_reply)
                  }
                }else if (
                  evaluate_content.includes("好吃") || evaluate_content.includes("不错") || evaluate_content.includes("非常好") || evaluate_content.includes("赞")
                  || evaluate_content.includes("很好") || evaluate_content.includes("很棒") || evaluate_content.includes("太棒了") || evaluate_content.includes("香")
                  || evaluate_content.includes("good") || evaluate_content.includes("nice") || evaluate_content.includes("美味") || evaluate_content.includes("徍")
                  || evaluate_content.includes("完美") || evaluate_content.includes("刚刚好") || evaluate_content.includes("下饭") || evaluate_content.includes("挺好")
                  || evaluate_content.includes("特别好")
                ){
                  if(fraction_list == "总分5"){
                    console.log("我是5星觉得好吃的评论");
                    console.log(array[index])
                    this.reply(array[index],this.good_5_reply)
                  }
                }
                //把当前的列表数量保存下来
                this.current_myList_length = my_list.length;
                //当前在forEach中，让循环到最后一个评论回复完之后的时候再去进行刷新、迭代操作。
                if(index+1 == my_list.length){
                    if(this.refresh_count >= 8){
                      this.refresh_count = 0;
                      return;
                    }else{
                      setTimeout(()=>{
                        no_reply_btn.dispatchEvent(clickEvent);
                        this.refresh_count++;
                        setTimeout(()=>{
                          if(my_list_box.length > 0){
                            this.get_list();
                          }
                        },1000)
                      },500)
                      if(this.refresh_count == 2 && my_list.length == this.current_myList_length){
                        console.log("俩次刷新后还是一样的数据长度，则退出当前函数")
                        this.refresh_count = 8;
                      }
                    }
                  }
            })
        }else {
          alert("暂无未回复评价");
        }
      },
      reply(element,reply_text){
        const inputEvent = new Event('input',{"bubbles":true,"cancelable":false});
        const clickEvent = new Event('click',{"bubbles":true,"cancelable":false});
        const reply_btn = element.getElementsByClassName("btn_list")[0];
        reply_btn.dispatchEvent(clickEvent);
        const textarea = element.getElementsByClassName("roo-input")[0];
        setTimeout(()=>{
          function setNativeValue(element,value){
            const valueSetter = Object.getOwnPropertyDescriptor(element,'value').set;
            const prototype = Object.getPrototypeOf(element);
            console.log(valueSetter);
            const prototypeValueSetter = Object.getOwnPropertyDescriptor(prototype,'value').set;
            console.log(prototypeValueSetter)
            if(valueSetter && valueSetter !== prototypeValueSetter){
              prototypeValueSetter.call(element,value);
            } else{
              valueSetter.call(element,value);
            }
          }
          setNativeValue(textarea,reply_text[Math.floor(Math.random() * reply_text.length)]);
          textarea.dispatchEvent(inputEvent);
          const send_btn = element.getElementsByClassName("roo-btn-primary")[0];
          send_btn.dispatchEvent(clickEvent);
        })
      }
    }


  })

};